Skip to main content

配置 Percona-XtraDB-Cluster

注意

确保Percona XtraDB群集服务器未运行。

$ sudo service mysql stop

配置示例假定存在三个Percona XtraDB Cluster节点:

NodeHostIP
Node 1pxc1192.168.70.61
Node 2pxc2192.168.70.62
Node 3pxc3192.168.70.63

如果您正在运行Debian或Ubuntu,请/etc/percona-xtradb-cluster.conf.d/wsrep.cnf 在第一个节点上将以下配置变量添加到:

wsrep_provider=/usr/lib/libgalera_smm.so

wsrep_cluster_name=pxc-cluster
wsrep_cluster_address=gcomm://192.168.70.61,192.168.70.62,192.168.70.63

wsrep_node_name=pxc1
wsrep_node_address=192.168.70.61

wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth=sstuser:passw0rd

pxc_strict_mode=ENFORCING

binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2

如果您正在运行Red Hat或CentOS,请将以下配置变量添加到/etc/percona-xtradb-cluster.conf.d/wsrep.cnf 第一个节点上:

wsrep_provider=/usr/lib64/galera3/libgalera_smm.so

wsrep_cluster_name=pxc-cluster
wsrep_cluster_address=gcomm://192.168.70.61,192.168.70.62,192.168.70.63

wsrep_node_name=pxc1
wsrep_node_address=192.168.70.61

wsrep_sst_method=xtrabackup-v2
wsrep_sst_auth=sstuser:passw0rd

pxc_strict_mode=ENFORCING

binlog_format=ROW
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2

配置参考

wsrep_provider

指定Galera库的路径。

注意

位置取决于分布:

  • Debian或Ubuntu: /usr/lib/libgalera_smm.so

  • 红帽或CentOS: /usr/lib64/galera3/libgalera_smm.so

wsrep_cluster_name

指定集群的逻辑名称。集群中的所有节点必须相同。

wsrep_cluster_address

指定群集中节点的IP地址。一个节点加入集群至少需要一个,但是建议列出所有节点的地址。这样,如果列表中的第一个节点不可用,则加入节点可以使用其他地址。

注意

群集中的初始节点不需要任何地址。但是,建议指定它们并正确引导第一个节点。如果节点将来发生故障,这将确保该节点能够重新加入集群。

wsrep_node_name

为每个单独的节点指定逻辑名称。如果未指定此变量,将使用主机名。

wsrep_node_address

指定此特定节点的IP地址。

wsrep_sst_method

默认情况下,Percona XtraDB群集使用Percona XtraBackup进行状态快照传输(SST)。wsrep_sst_method=xtrabackup-v2强烈建议设置。此方法要求用户在初始节点上设置SST。为SST用户凭据提供wsrep_sst_auth变量。

wsrep_sst_auth

将SST的身份验证凭据指定 为<sst_user>:<sst_pass>。在引导第一个节点时,必须创建此用户 并为其提供必要的特权:

mysql> CREATE USER 'sstuser'@'localhost' IDENTIFIED BY 'passw0rd';
mysql> GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO
'sstuser'@'localhost';
mysql> FLUSH PRIVILEGES;

有关更多信息,请参见Percona XtraBackup的特权。

pxc_strict_mode

PXC严格模式默认情况下ENFORCING处于启用状态,并且设置为,这会阻止在Percona XtraDB群集中使用实验性和不受支持的功能。

binlog_format

Galera仅支持行级复制,因此请设置binlog_format=ROW。

default_storage_engine

Galera仅完全支持InnoDB存储引擎。它不能与MyISAM或任何其他非事务性存储引擎一起正常使用。将此变量设置为default_storage_engine=InnoDB。

innodb_autoinc_lock_mode

Galera仅支持2InnoDB的交错()锁定模式。设置传统(0)或连续(1)锁定模式可能会由于未解决的死锁而导致复制失败。将此变量设置为innodb_autoinc_lock_mode=2。